F1.新規作成
●●●ワ−クブックを新規にに追加する
Sub Macro1()
Workbooks.Add
End Sub
■ 追加したブックはアクティブになっているので
"bookname = ActiveWorkbook.Name"
でブックの名前を取得し変数に入れて置くと、後でその変数を使用しブック制御が容易に出来る。
PageTop
F2.開く
●●●ブックを開く
Sub Macro2()
ChDir "B:\VBAdata"
Workbooks.Open Filename:="B:\VBAdata\kiexl.xls"
End Sub
■ 自動記録では上記であるが、ファイル指定にパスまで入れる場合はディレクトリ−変更
「ChDir」無くてもよい。
■ 逆にディレクトリ−を変更した場合は、「Filename:="kiexl.xls"」のようにファイル名だけでよい。
■ マクロのカスタム作成では、ファイル名を事前に出来るだけマクロの前の方へ定数に入れ記述
すると、別のPCでそのマクロを使用するケ−スではドライブの変更等が容易になる。
PageTop
F3.閉じる
●●●閉じるブックに変更がなけへばスンナリ閉じる
★ 自動記録されない
■ ブックが閉じてしまい自動記録は出来ない
(別のブックへ記録すれば記録可)
◆「ActiveWorkbook.Close」 と記述でOK
PageTop
F4.上書き保存
●●●「新規ブックで保存先が未定の場合」は、保存先指定のダイアログが表示される
Sub Macro1()
ActiveWorkbook.SaveAs Filename:="A:\My Documents\Book1.xls", FileFormat:= _
xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
, CreateBackup:=False
End Sub
●●●「1度保存されているブックの場合」
Sub Macro2()
ActiveWorkbook.Save
End Sub
■ 新規にブックを追加(開いた)した場合まだ保存先が決まっていないので、「上書き保存」
を行っても「名前を付けて保存」と同じになる。
PageTop
F5.名前を付けて保存
●●●ダイアログでファイル形式を指定しない限り、ブックはExcel2000形式で保存される。
Sub Macro3()
ActiveWorkbook.SaveAs Filename:="A:\My Documents\Book2.xls", FileFormat:= _
xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
, CreateBackup:=False
End Sub
■ ファイル名は、Excel5.0では4文字(全角)であったが、Excel95以降は255文字(半角)までOK。
■ ファイル名に[\][<][>][?]["][!][:][/][*]は使用出来ない。[−]も半角・全角・日本文字の
区別が付けずらいのでなるべく使用しない方がよい。
■ マクロのカスタム作成では、ファイル名を事前に出来るだけマクロの前の方へ定数に入れ記述
すると、別のPCでそのマクロを使用するケ−スではドライブの変更等が容易になる。
PageTop
F6.Webペ−ジとして保存
○○●ブック全体か又はブックの一部だけを保存か指定でき、一瞬でHTMLファイルに変換できる。
[1]ブック全体を変換したケ−ス
Sub Macro1()
ActiveWorkbook.SaveAs Filename:="B:\VBAdata\Book.htm", FileFormat:=xlHtml, _
ReadOnlyRecommended:=False, CreateBackup:=False
End Sub
-------------------------------------------------------------------------
[2]アクティブなシ−トを対象し変換したケ−ス
Sub Macro2()
ActiveWorkbook.PublishObjects.Add(xlSourceSheet, "B:\VBAdata\Page.htm", _
"Sheet1", "", xlHtmlStatic, "Book2_10826", "").Publish (True)
Range("E4").Select
End Sub
--------------------------------------------------------------------------
[3]グラフを選択して変換したケ−ス
Sub Macro3()
ActiveSheet.ChartObjects("グラフ 1").Activate
ActiveChart.ChartArea.Select
ActiveSheet.ChartObjects("グラフ 1").Activate
ActiveWorkbook.PublishObjects.Add(xlSourceChart, "B:\VBAdata\Page.htm", _
"Sheet1", "グラフ 1", xlHtmlStatic, "Book3_21574", "").Publish (True)
ActiveWindow.Visible = False
Windows("Book3").Activate
Range("F2").Select
End Sub
■HTMLファイルは、VBScript又はJScriptで保存される。(IE5.0以外では正しく表示されない)
PageTop
F7.作業状態の保存
●●●現在の作業状態を保存。
Sub Macro1()
Application.Save Filename:="A:\My Documents\resume.xlw"
End Sub
PageTop
F8.ブラウザでプレビュ−
○○●アクティブになっているワ−クシ−トをWeb上へ表示。
Sub Macro1()
ActiveWorkbook.WebPagePreview
End Sub
■この項目指定でHTMLファイルにしなくてもWebの出来上がりが確認できる
PageTop
F9.ペ−ジ設定
●●●印刷に関し[ペ−ジ][余白][ヘッダ−/フッタ−][シ−ト]の設定。
Sub Macro2()
With ActiveSheet.PageSetup
.PrintTitleRows = "$1:$1"
.PrintTitleColumns = ""
End With
ActiveSheet.PageSetup.PrintArea = ""
With ActiveSheet.PageSetup
.LeftHeader = ""
.CenterHeader = ""
.RightHeader = ""
.LeftFooter = ""
.CenterFooter = ""
.RightFooter = ""
.LeftMargin = Application.InchesToPoints(0.78740157480315)
.RightMargin = Application.InchesToPoints(0.31496062992126)
.TopMargin = Application.InchesToPoints(0.590551181102362)
.BottomMargin = Application.InchesToPoints(0.984251968503937)
.HeaderMargin = Application.InchesToPoints(0.511811023622047)
.FooterMargin = Application.InchesToPoints(0.511811023622047)
.PrintHeadings = False
.PrintGridlines = False
.PrintComments = xlPrintNoComments
.PrintQuality = 300
.CenterHorizontally = False
.CenterVertically = False
.Orientation = xlPortrait
.Draft = False
.PaperSize = xlPaperA4
.FirstPageNumber = xlAutomatic
.Order = xlDownThenOver
.BlackAndWhite = False
.Zoom = 100
End With
End Sub
■ カスタムマクロ作成で印刷関係を織り込む場合、上記のように設定した内容は全て自動記録
出来るのでこれをコピ−して使用すればよい。
PageTop
F10.印刷範囲
PageTop
F10−1.印刷範囲
●●●特に範囲を指定しない場合は、アクティブワ−クシ−トのデ−タが入力されている範囲が印刷される。
Sub Macro1()
Range("A1:C3").Select
ActiveSheet.PageSetup.PrintArea = "$A$1:$C$3"
Range("F7").Select
End Sub
■ マクロ処理した特定のセルのみ印刷したい場合組み込む。
Top
F10−2.印刷範囲
●●●下記は印刷範囲の指定解除。
Sub Macro2()
ActiveSheet.PageSetup.PrintArea = ""
End Sub
Top
F11.印刷プレビュ−
●●●下記マクロは、改ペ−ジプレビュ−画面を表示し印刷範囲境界線を変更した例。
Sub Macro1()
ActiveWindow.SelectedSheets.PrintPreview
Rows("160:171").RowHeight = 0
Rows("159:159").RowHeight = 12
ActiveWindow.SmallScroll Down:=-2
ActiveWindow.LargeScroll Down:=-2
ActiveWindow.SmallScroll Down:=8
Rows("99:114").RowHeight = 0
Rows("98:98").RowHeight = 10.5
Rows("99:130").RowHeight = 0
Rows("98:98").RowHeight = 5.25
End Sub
■ 自動処理を実行するマクロで「印刷プレビュ−」を表示させる事は普通ないと思われるが、
この画面で印刷条件を記録しカスタムマクロへ織り込む。
PageTop
F12.印刷
●●●印刷の実行(下記例1〜2ペ−ジの印刷)。
Sub Macro1()
ActiveWindow.SelectedSheets.PrintOut From:=1, To:=2, Copies:=1, Collate _
:=True
End Sub
PageTop
F13.送信
PageTop
F13−1.メ−ルの宛先
○●●ブックを開いた状態で本項実施で、メ−ルダイアログが表示されそのExcelブックが添付される。
Sub Macro1()
Application.Dialogs(xlDialogSendMail).Show
End Sub
Top
F13−2.回覧先
○●●
★ 自動記録されない
Top
F13−3.Exchangeフォルダ−
○●●
★ 自動記録されない
Top
F13−4.オンライン会議の参加
○○●
★ 自動記録されない
Top
F14.プロパティ
●●●[ファイル情報][ファイルの詳細][ファイル構成]等をダイアログへ表示。
★ 自動記録されない
PageTop
F15.終了
●●●Excelの終了。
★ 自動記録されない
■ 終了してしまい自動記録できない。
◆ 「Application.Quit」 と記述でOK
PageTop